package com.ssy.lingxi.platform.manage.service.web;

import com.ssy.lingxi.common.model.dto.MemberAndRoleIdDTO;
import com.ssy.lingxi.common.model.dto.UserLoginCacheDTO;
import com.ssy.lingxi.common.response.Wrapper;
import com.ssy.lingxi.platform.manage.api.model.dto.shop.SelfBusinessShopLogoDTO;
import com.ssy.lingxi.platform.manage.api.model.vo.shop.SelfBusinessShopLogoVO;
import com.ssy.lingxi.platform.manage.entity.base.Shop;
import com.ssy.lingxi.platform.manage.entity.base.ShopRuleDetail;
import com.ssy.lingxi.platform.manage.model.request.shop.ShopAllAndSuperiorRequest;
import com.ssy.lingxi.platform.manage.model.request.shop.ShopAllReq;
import com.ssy.lingxi.platform.manage.model.response.SelfShopListResp;

import java.util.List;

/**
 * web - 商城 - 业务处理层
 *
 * @author fhj
 * @version 2.0.0
 * @date 2021/09/26
 */
public interface IShopWebService {

    Wrapper<List<SelfShopListResp>> selfShopList(String shopName);

    Wrapper<List<Shop>> all(ShopAllReq req, UserLoginCacheDTO user);

    Wrapper<List<Shop>> findWebEnterpriseSelfShop(Long siteId,UserLoginCacheDTO sysUser);

    Wrapper<List<ShopRuleDetail>> findAppSelfShopByCurrMember(UserLoginCacheDTO user);

    Wrapper<List<Long>> findSelfBusinessShopId(MemberAndRoleIdDTO dto);

    Wrapper<List<SelfBusinessShopLogoVO>> findSelfBusinessShopLogo(SelfBusinessShopLogoDTO dto);

    Wrapper<List<ShopRuleDetail>> findAppletsSelfShopByCurrMember(UserLoginCacheDTO sysUser);

    Wrapper<List<Shop>> allShop(ShopAllAndSuperiorRequest req, UserLoginCacheDTO sysUser);
}
